Не понятно что беспокоит, память течет или то что коллизий так много?
По 2 скрину не понятно как юнит попадает в переменную A_JukDetektPredmUnit, возможно когда в ней ничего нет, функция пытается переместить ничто, триггер прерывается и точки не освобождаются, и так каждый тик,
При запуске теста на свободный слот подставляется компьютер, если у него спросить статус то он вернет что играет. Добавь еще условие что проверяемый это человек.
Так на картинке - есть база где колеса меняют как в гонках "формула один"?
Перед стартом и после каждой трассы тебя телепортит на базу где можно поменять колёса, кабину, двигатель, купить оружие, всё по отдельности влияет на машину и имеет свою модельку
Наверное, лучшим методом было бы развитие одного типа болида, растягивая его баланс в разные стороны посредством тюнинга, т.к. конфигураций трасс на вряд ли будет много, чтобы реализовать очень разный потенциал разнотипных болидов. С другой стороны, наличие разных типов необходимо для боевой составляющей. Но на мой взгляд, она, в свою очередь, не имеет большого смысла без четко выверенного баланса и отточенного управления, чтобы в первую очередь можно было быстро и стабильно ехать. Как все знают, стабильность - залог мастерства, и здесь это крайне актуально. В итоге, показывая хорошие круги на базовом болиде, можно развивать аспект вооружения и защиты.
Так и сделано, возможно нужно еще добавить, настройку подвески, сход, развал...
JaBeN_Симфер,
Спасибо за карты, думаю срисовать третью
prog:
Лаги были из-за того что память кончилась.
Дело не в таймере, пробовал и без него.
С помощью этого кода выяснилось что сборщик не успевает запуститься если плодить много объектов
и выяснилась что чем меньше объектов создаю тем чаще он вызывается
myClass = {}
function myClass:new( )
local obj = {}
obj.x = 0.0
obj.y = 0.0
obj.z = 0.0
function myClass:__gc()
if first == true then
DisplayTimedTextToForce( GetForceOfPlayer(Player(0)), 1.1, "Destructor" )
first = false
end
end
setmetatable(obj, self)
self.__index = self
return obj
end
first = true
function loop()
for i = 1, 90 do
first = true
local a = myClass:new()
end
end
function init()
initTrg = CreateTrigger( )
TriggerRegisterTimerEventPeriodic( initTrg, 0.01 )
TriggerAddAction( initTrg, loop )
end
есть еще такая вещь как MilkShape 3d, и официальный плагин к 3d max(там вообще можешь делать что вздумается, если умеешь конечно) classic.battle.net/war3/files
Обновил карту, теперь работает около 60% предметов, добавил 2 трассу, таблицу лидеров и чуток улучшил физику машины. Однако откуда-то начал вылезать десинхрон и проблемы со сборщиком мусора.
Если удастся решить в следующем обновлении думаю добавить коллизии между машинами, трамплины, мотоциклы и мультиплеер на 24 игрока
Bergi_Bear:
Кабина, оружие, двигатель, и 4 колеса это отдельные объекты.
На WASD разве можно отлавливать нажатия ? или костыль надо какой-то использовать?
Дребезг возникает из-за того что я не могу вычислить точку пересечения стены и машины, поэтому всегда отталкиваю машину от стены на константу.
У меня есть сфера вокруг машины о которой я знаю, но данных о стенах нет, я могу лишь узнать проходима или нет точка создавая dummy юнита, как такими способами вычислить расстояние на которое надо оттолкнуть машину я не знаю.
Я тебя правильно понял, что ты пробовал закрепить камеру при инициализации над персонажем как в пункте 2, и тут же указал сглаживание? При этом пункт 1 ты не используешь.
Так точно. У меня сложилось впечатление что в механике вара все объекты не могут перемещаться меньше чем на определенное число, либо перемещаются каждые 5 кадров, по другому никак не могу объяснить такие артефакты.
Стоит поиграть немного с этим параметром. Если сделать больше, то окружающий мир становится плавным, но начинает немного дергаться сам персонаж. В моем случае при значении = 0.4 я получил удовлетворительный баланс.
» WarCraft 3 / Какая здесь утечка? (GUI)
По 2 скрину не понятно как юнит попадает в переменную A_JukDetektPredmUnit, возможно когда в ней ничего нет, функция пытается переместить ничто, триггер прерывается и точки не освобождаются, и так каждый тик,
» WarCraft 3 / Проблема со значением переменной
Ред. Зелёный ёж
» WarCraft 3 / Фарш
Steal nerves: У меня не получается обрезать миникарту обычным способом(может это баг рефорджа, или я что то не знаю но в старых версиях вара у меня работало)
Спасибо за карты, думаю срисовать третью
» WarCraft 3 / Как сделать что бы при выполнении ВСЕХ событий срабатывал триг.
Ред. Зелёный ёж
» WarCraft 3 / [Lua] Созданный экземпляр класса не освобождается при...
Лаги были из-за того что память кончилась.
Дело не в таймере, пробовал и без него.
С помощью этого кода выяснилось что сборщик не успевает запуститься если плодить много объектов
и выяснилась что чем меньше объектов создаю тем чаще он вызывается
Вывод который я сделал: не стоит больше заниматься такой ерундой :D
» WarCraft 3 / [Lua] Созданный экземпляр класса не освобождается при...
Ред. Зелёный ёж
» WarCraft 3 / "Оптимизация" модели.
» WarCraft 3 / "Оптимизация" модели.
» WarCraft 3 / Фарш
Ред. Зелёный ёж
» WarCraft 3 / wGeometry - 3D библиотека (lua)
» WarCraft 3 / Фарш
Если удастся решить в следующем обновлении думаю добавить коллизии между машинами, трамплины, мотоциклы и мультиплеер на 24 игрока
» WarCraft 3 / wGeometry - 3D библиотека (lua)
» WarCraft 3 / [Lua] Созданный экземпляр класса не освобождается при...
Не помогает, делал даже что-то вроде деструктора
function myClass:delete()
self.x = nil
self.y = nil
self.z = nil
end
тоже не вышло
Ред. Зелёный ёж
» WarCraft 3 / По поводу крепления камеры к юниту...
Ред. Зелёный ёж
» WarCraft 3 / [Lua] Созданный экземпляр класса не освобождается при...
запускаю этот же код из C++, работает всё нормально
» WarCraft 3 / [Lua] Созданный экземпляр класса не освобождается при...
Спасибо работает, теперь использую TimerStart(...)
» WarCraft 3 / [Lua] Созданный экземпляр класса не освобождается при...
» WarCraft 3 / Фарш
Кабина, оружие, двигатель, и 4 колеса это отдельные объекты.
На WASD разве можно отлавливать нажатия ? или костыль надо какой-то использовать?
Дребезг возникает из-за того что я не могу вычислить точку пересечения стены и машины, поэтому всегда отталкиваю машину от стены на константу.
У меня есть сфера вокруг машины о которой я знаю, но данных о стенах нет, я могу лишь узнать проходима или нет точка создавая dummy юнита, как такими способами вычислить расстояние на которое надо оттолкнуть машину я не знаю.
» WarCraft 3 / Фарш
» WarCraft 3 / Фарш
» XGM Конкурсы / Mini-Game Contest: Reforged
» XGM Конкурсы / Mini-Game Contest: Reforged
» WarCraft 3 / Дребезг при движении юнита
» WarCraft 3 / Дребезг при движении юнита
» WarCraft 3 / Дребезг при движении юнита